home *** CD-ROM | disk | FTP | other *** search
/ Eagles Nest BBS 8 / Eagles_Nest_Mac_Collection_Disc_8.TOAST / Developer Environments / MacCjr / MacC Jr / Library Folder / C Include Folder / SerialDriver.h < prev    next >
Encoding:
C/C++ Source or Header  |  1987-01-06  |  2.5 KB  |  139 lines  |  [TEXT/EDIT]

  1. /*
  2.  SerialDrvr.h  
  3.  © Copyright     1984    Apple Computer Inc.    All Rights Reserved
  4.          1986    Gijs Mos
  5.         1987    Consulair Corp
  6.  Some values for which IM gives no mnemonics can be obtained if you
  7.  define the symbol SERIAL_ADDITIONS before including this file.
  8.  */
  9.  
  10. /* Driver reset information - Baud rates */
  11.  
  12. #define    baud300        380
  13. #define    baud600        189
  14. #define    baud1200    94
  15. #define    baud1800    62
  16. #define    baud2400    46
  17. #define    baud3600    30
  18. #define    baud4800    22
  19. #define    baud7200    14
  20. #define    baud9600    10
  21. #define    baud19200    4
  22. #define    baud57600    0
  23.  
  24. /*  Driver reset information - Stop bit selection */
  25.  
  26. #define    stop10        0x4000
  27. #define    stop15        0x8000
  28. #define stop20        0xC000
  29.  
  30. /*  Driver reset information - Parity bit selection */
  31.  
  32. #define    noParity    0x2000
  33. #define    oddParity    0x1000
  34. #define evenParity    0x3000
  35.  
  36. /*  Driver reset information - Character size selection */
  37.  
  38. #define    data5        0x0000
  39. #define    data6        0x0400
  40. #define    data7        0x0800
  41. #define    data8        0x0C00
  42.  
  43. /* Masks for errors */
  44.  
  45. #define    swOverrunErr    1
  46. #define    parityErr    16
  47. #define    hwOverrunErr    32
  48. #define    framingErr    64
  49.  
  50. /* Masks for changes that cause events to be posted */
  51.  
  52. #define ctsEvent    32
  53. #define    breakEvent    128
  54.  
  55. #define    xOffWasSent    0x80
  56.  
  57. /* Result codes */
  58.  
  59. #ifndef noErr
  60.   #define noErr    0
  61. #endif
  62. #ifndef    openErr
  63.   #define openErr -23
  64. #endif
  65.  
  66. /* Port identifiers */
  67.  
  68. #define sPortA        0
  69. #define sPortB        1
  70.  
  71. /* Control/Status types */
  72.  
  73. struct SerShk {
  74.     char    fXOn;
  75.     char    fCTS;
  76.     char    xOn;
  77.     char    xOff;
  78.     char    errs;
  79.     char    evts;
  80.     char    fInX;
  81.     char    null;
  82. };
  83.  
  84. typedef struct SerShk SerShk;
  85.  
  86. struct SerStaRec {
  87.     char    cumErrs;
  88.     char    xOffSent;
  89.     char    rdPend;
  90.     char    wrPend;
  91.     char    ctsHold;
  92.     char    xOffHold
  93. };
  94.  
  95. typedef struct SerStaRec SerStaRec;
  96.  
  97. /* Symbols below aren't mnemonics provided in IM.
  98.    To avoid conflicts they are included conditionally.
  99. */
  100.  
  101. #ifdef SERIAL_ADDITIONS
  102.   /* Control function codes */
  103.  
  104.   #define    ResetCode    8
  105.   #define    SetBufCode    9
  106.   #define    HShakeCode    10
  107.   #define    ClrBrkCode    11
  108.   #define    SetBrkCode    12
  109.   #define    BaudRateCode    13
  110.   #define    ReplaceCode    19
  111.   #define    SetXOffCode    21
  112.   #define    ClearXOffCode    22
  113.   #define    CSendXOnCode    23
  114.   #define    SendXOnCode    24
  115.   #define    CSendXOffCode    25
  116.   #define    SendXOffCode    26
  117.   #define    ResetSSCCode    27
  118.  
  119.   /* Status function codes */
  120.   
  121.   #define    GetBufCode    2
  122.   #define    ErrFlagCode    8
  123.   
  124.   /* ROM driver names (Cstrings) */
  125.   
  126.   #define    aInName        ".AIn"
  127.   #define    aOutName    ".AOut"
  128.   #define    bInName        ".BIn"
  129.   #define    bOutName    ".BOut"
  130.  
  131.   /* Driver reference numbers */
  132.   
  133.   #define    aInRef        -6
  134.   #define    aOutRef        -7
  135.   #define    bInRef        -8
  136.   #define    bOutRef        -9
  137.   
  138. #endif
  139.